.... .. . s s s
+^""888h. ~"888h @88> :8 :8 :8
8X. ?8888X 8888f %8P u. u. .88 .88 u. u. u. .88
'888x 8888X 8888~ . u x@88k u@88c. .u :888ooo :888ooo ...ue888b x@88k u@88c. .u :888ooo
'88888 8888X "88x: .@88u us888u. ^"8888""8888" ud8888. -*8888888 -*8888888 888R Y888r ^"8888""8888" ud8888. -*8888888
`8888 8888X X88x. ''888E` .@88 "8888" 8888 888R :888'8888. 8888 8888 888R I888> 8888 888R :888'8888. 8888
`*` 8888X '88888X 888E 9888 9888 8888 888R d888 '88%" 8888 8888 888R I888> 8888 888R d888 '88%" 8888
~`...8888X "88888 888E 9888 9888 8888 888R 8888.+" 8888 8888 888R I888> 8888 888R 8888.+" 8888
x8888888X. `%8" 888E 9888 9888 8888 888R 8888L .8888Lu= .8888Lu= u8888cJ888 . 8888 888R 8888L .8888Lu=
'%"*8888888h. " 888& 9888 9888 "*88*" 8888" '8888c. .+ ^%888* ^%888* "*888*P" .@8c "*88*" 8888" '8888c. .+ ^%888*
~ 888888888!` R888" "888*""888" "" 'Y" "88888% 'Y" 'Y" 'Y" '%888" "" 'Y" "88888% 'Y"
X888^""" "" ^Y" ^Y' "YP' ^* "YP'
`88f
88
This was my first FPGA board that I designed independently and it is also one of my earlier boards that I've designed in general. During my internship at Ag Leader, my coworker suggested making my own developemnt board since I had expressed how commerical FPGA development boards were out of my price range. Despite the headaches that come from a DIY project, I am glad that I decided to build my own. I learned so much from the design, prototype, and iteration process that a development board would never have exposed me to.
Prior to this project I had expereience at Iowa State programming Terasic DE2-115's in Verilog for my intro to digital logic class. As for the hardware and circuit side of things, I had just taken EE201 (Circuits I), so I did not have much to go off of (well, this project was moreso digital logic circuitry, so I suppose not much analog knowledge would've been helpful anyways).
This development board consists of a Lattice MachXO2 7000HC, four user-selectable voltage levels for the GPIO banks, and 1 player PONG (I wasn't able to make another controller, I pieced that together from a broken Perkin-Elmer Gauge Controller that I had bought from Iowa State's surplus :P). While all my features work, there's a lot with the board that I am not very pleased with when revisiting this project. A lack of a power switch, the awkward way my JTAG programmer plugs in (I designed the JTAG programm you see in the picture as well), and the terrible VGA video quality (putting it right next to the power area of the board with zero mindfulness for signal integrity was not a great idea). But I make mistakes and learn from them, so long as I don't make them again.
Since I've finished this project, I've applied what I learned here and have worked on much more ambitious projects such as my Lattice ECP5 HDMI board that I will add soon to my website (BGA soldering is not something I've done before, so it may take a while!).